const baseWebpackConfig = require("./webpack.base.config")
const HtmlWebpackPlugin = require("html-webpack-plugin")
const webpackMerge = require("webpack-merge");
const utils = require("./utils")
const path = require("path")


const webpackDevConfig = webpackMerge.merge(baseWebpackConfig, {
  mode: "development",   // 指定构建环境  

  plugins: [   // 插件
    new HtmlWebpackPlugin({
      template: path.join(__dirname, '../src/index.html'),     //源文件
      filename: 'index.html',                               //生成内存中的
      // filename: utils.resolve('index.html'),             
      inject: true, // true：默认值，script标签位于html文件的 body 底部, head| body
      favicon: 'src/assets/favicon.ico',
    }),

  ],

  // 开发环境本地启动的服务配置
  devServer: {
    // historyApiFallback: true, // 当找不到路径的时候，默认加载index.html文件
    contentBase: utils.resolve('../static'), // 指定托管的根目录,告诉服务器从哪里提供内容。只有在你想要提供静态文件时才需要
    open: true,  //每次都打开一个网页
    hot: true,
    compress: true, // 一切服务都启用gzip 压缩：
    port: "7890", // 指定段靠谱
    // publicPath: "/", // 访问资源加前缀
    // proxy: {
    //   // 接口请求代理
    //   // 用于地图搜索
    //   "/api": {
    //     target: 'https://apis.map.qq.com',
    //     pathRewrite: { '^/api': '' },
    //     changeOrigin: true,     // target是域名的话，需要这个参数，
    //     secure: true,           // 设置支持https协议的代理
    //   }
    // }
  }
});


const SpeedMeasurePlugin = require('speed-measure-webpack-plugin'); //引入插件
const smp = new SpeedMeasurePlugin(); //创建插件对象


module.exports = smp.wrap(webpackDevConfig)